﻿using System;

namespace LANChatClient
{
    /// <summary>
    /// Defines all text to be used throughout the application. Define all strings in one file, as variables,
    /// to allow for easy proofreading and modification.
    /// </summary>   
    public class GeneralStrings
    {
        public static String GetDefaultExPolicy = "Client Exception Policy";
        public static String LanChatStart = "LANChatCore Start";
        public static String LanChatStop = "LANChatCore Shutdown";
    }

    /// <summary>
    /// Defines all Error Strings
    /// </summary>
    public class ErrorStrings
    {
        public static String ThemeLoadFailed = "The requested theme %s failed to load";
    }

    /// <summary>
    /// Defines all strings for the Client Main Form in English
    /// </summary>
    public sealed class ClientMainFormStringsEnglish
    {
        //Main Menu Strip Headings
        public static String MenuStripDisconnect = "Disconnect";
        public static String MenuStripRoom = "Room";
        public static String MenuStripSettings = "Settings";
        public static String MenuStripHelp = "Help";

        //Room Menu Labels
        public static String RoomMenuCreateRoom = "Create Room";
        public static String RoomMenuModerateRoom = "Moderate Room";
        public static String RoomMenuLeaveRoom = "Leave Room";

        //Moderate Room Menu Labels
        public static String ModerateRoomMenuKickUser = "Kick User";
        public static String ModerateRoomMenuBanUser = "Ban User";
        public static String ModerateRoomMenuSilenceUser = "Silence User";
        public static String ModerateRoomMenuUnSilenceuser = "UnSilence User";
        public static String ModerateRoomMenuUnBanUser = "UnBan User";

        //Settings Menu Labels
        public static String SettingsMenuColourScheme = "Colour Scheme";
        public static String SettingsMenuHideOnMinimise = "Hide On Minimise";
        public static String SettingsMenuHideOnClose = "Hide On Close";
        public static String SettingsMenuSound = "Sound";
        public static String SettingsMenuLanguage = "Language";

        //Colour Schemes Menu Labels
        public static String ColourSchemesMenuDefault = "Default";
        public static String ColourSchemesMenuClassic = "Classic";

        //Help Menu Labels
        public static String HelpMenuShowHelp = "Show Help";
        public static String HelpMenuAbout = "About";

        //Other Strings
        public static String ButtonSend = "Send";
        public static String Quit = "Are you sure you want to quit?";
    }

    /// <summary>
    /// Defines all strings for the Client Main Form in German
    /// </summary>
    public sealed class ClientMainFormStringsGerman
    {
        //Main Menu Strip Headings
        public static String MenuStripDisconnect = "Trennen";
        public static String MenuStripRoom = "Raum";
        public static String MenuStripSettings = "Einstellungen";
        public static String MenuStripHelp = "Hilfe";

        //Room Menu Labels
        public static String RoomMenuCreateRoom = "Raum anlegen";
        public static String RoomMenuModerateRoom = "Raum Moderat";
        public static String RoomMenuLeaveRoom = "Raum lassen";

        //Moderate Room Menu Labels
        public static String ModerateRoomMenuKickUser = "Benutzer entfernen";
        public static String ModerateRoomMenuBanUser = "Verbot Benutzer";
        public static String ModerateRoomMenuSilenceUser = "Ruhe Benutzer";
        public static String ModerateRoomMenuUnSilenceuser = "Erlauben Benutzer";
        public static String ModerateRoomMenuUnBanUser = "Erlauben Benutzer";

        //Settings Menu Labels
        public static String SettingsMenuColourScheme = "Farbschema";
        public static String SettingsMenuHideOnMinimise = "Hide Am Minimieren";
        public static String SettingsMenuHideOnClose = "Hide Am Schließen";
        public static String SettingsMenuSound = "Klang";
        public static String SettingsMenuLanguage = "Sprache";

        //Colour Schemes Menu Labels
        public static String ColourSchemesMenuDefault = "Vorgabe";
        public static String ColourSchemesMenuClassic = "Klassiker";

        //Help Menu Labels
        public static String HelpMenuShowHelp = "Hilfe anzeigen";
        public static String HelpMenuAbout = "Über";

        //Other Strings
        public static String ButtonSend = "Senden";
        public static String Quit = "Sind Sie sicher, dass Sie zu verlassen?";
    }

    /// <summary>
    /// Defines all strings for the Client Main Form in French
    /// </summary>
    public sealed class ClientMainFormStringsFrench
    {
        //Main Menu Strip Headings
        public static String MenuStripDisconnect = "Déconnecter";
        public static String MenuStripRoom = "Chambre";
        public static String MenuStripSettings = "Paramètres";
        public static String MenuStripHelp = "Aider";

        //Room Menu Labels
        public static String RoomMenuCreateRoom = "Créer la Salle";
        public static String RoomMenuModerateRoom = "Administrer Chambre";
        public static String RoomMenuLeaveRoom = "Laisser la place";

        //Moderate Room Menu Labels
        public static String ModerateRoomMenuKickUser = "Supprimer l'utilisateur";
        public static String ModerateRoomMenuBanUser = "Retirer utilisateur";
        public static String ModerateRoomMenuSilenceUser = "Silence de l'utilisateur";
        public static String ModerateRoomMenuUnSilenceuser = "Permettre à l'utilisateur";
        public static String ModerateRoomMenuUnBanUser = "Permettre l'utilisateur";

        //Settings Menu Labels
        public static String SettingsMenuColourScheme = "La combinaison de couleur";
        public static String SettingsMenuHideOnMinimise = "Masquer dans Minimiser";
        public static String SettingsMenuHideOnClose = "Disparaissent sur Fermer";
        public static String SettingsMenuSound = "Sonde";
        public static String SettingsMenuLanguage = "Langue";

        //Colour Schemes Menu Labels
        public static String ColourSchemesMenuDefault = "Défaut";
        public static String ColourSchemesMenuClassic = "Classique";

        //Help Menu Labels
        public static String HelpMenuShowHelp = "Afficher l'aide";
        public static String HelpMenuAbout = "À propos de";

        //Other Strings
        public static String ButtonSend = "Envoyer";
        public static String Quit = "Etes-vous sûr de vouloir quitter?";
    }

    /// <summary>
    /// Defines all strings for the private chat form in English
    /// </summary>
    public sealed class ClientPrivateFormStringsEnglish
    {
        public static String WindowTitle = "LanChat | Private Chat with: %s";
        public static String SendButton = "Send";
    }

    /// <summary>
    /// Defines all strings for the private chat form in German
    /// </summary>
    public sealed class ClientPrivateFormStringsGerman
    {
        public static String WindowTitle = "LanChat | Private Chat mit: %s";
        public static String SendButton = "Senden";
    }

    /// <summary>
    /// Defines all strings for the private chat form in French
    /// </summary>
    public sealed class ClientPrivateFormStringsFrench
    {
        public static String WindowTitle = "LanChat | Chat privé avec: %s";
        public static String SendButton = "Envoyer";
    }

    /// <summary>
    /// Defines all strings for the about form in English
    /// </summary>
    public sealed class ClientAboutFormStringsEnglish
    {
        public static String WindowTitle = "About LanChat";
        public static String Version = "Version %s ";
        public static String Copyright = "Copyright © 2009";
        public static String CompanyName = "Robert Eves and Mike Stone";
        public static String Description = "Chat with friends and co-workers over your local intranet.\nYou will no longer have to worry about finding your way around a complicated interface!";
    }

    /// <summary>
    /// Defines all strings for the about form in German
    /// </summary>
    public sealed class ClientAboutFormStringsGerman
    {
        public static String WindowTitle = "Über LanChat";
        public static String Version = "Version %s ";
        public static String Copyright = "Urheberschutz © 2009";
        public static String CompanyName = "Robert Eves und Mike Stone";
        public static String Description = "Chat mit Freunden und Kollegen in Ihrem lokalen Intranet. \nSie müssen nicht mehr über die Suche nach sich Ihren Weg durch eine komplizierte Schnittstelle kümmern!";
    }

    /// <summary>
    /// Defines all strings for the about form in French
    /// </summary>
    public sealed class ClientAboutFormStringsFrench
    {
        public static String WindowTitle = "A propos de LanChat";
        public static String Version = "Version %s" ;
        public static String Copyright = "droit d'auteur © 2009";
        public static String CompanyName = "Robert Eves et Mike Stone";
        public static String Description = "Discutez avec vos amis et vos collègues sur votre intranet local. \nVous n'aurez plus à vous soucier de trouver votre chemin autour d'une interface compliquée!";
    }

    /// <summary>
    /// Defines all strings for the tray menu in english
    /// </summary>
    public sealed class ClientTrayMenuStringsEnglish
    {
        public static String Show = "Show";
        public static String Quit = "Quit";
    }

    /// <summary>
    /// Defines all strings for the tray menu in german
    /// </summary>
    public sealed class ClientTrayMenuStringsGerman
    {
        public static String Show = "Zeigen";
        public static String Quit = "Beenden";
    }

    /// <summary>
    /// Defines all strings for the tray menu in french
    /// </summary>
    public sealed class ClientTrayMenuStringsFrench
    {
        public static String Show = "Montrer";
        public static String Quit = "Quitter";
    }
}